package editorsvg.editor.comandos;

import editorsvg.editor.documento.ConjuntoElementos;
import editorsvg.editor.documento.Transformacion;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Jorge Berjano
 */
public class ComandoTransformar implements Comando {
    private ConjuntoElementos elementos;
    private Transformacion transformacion;
    
    public ComandoTransformar(ConjuntoElementos elementos, Transformacion transformacion) {
            this.elementos = elementos;
            this.transformacion = transformacion;
    }

    @Override
    public void hacer() {
        transformar(transformacion);
    }

    @Override
    public void deshacer() {
        Transformacion invertida = transformacion.crearInvertida();
        transformar(invertida);
    }
    
    private void transformar(Transformacion transformacion) {
        elementos.transformar(transformacion);
    }
}
